<%@page import="study.itwill.common.DBHandler"%>
<%@page import="study.itwill.jsp.PageHandler"%>
<%@page import="study.itwill.team5.admin.AdminItem"%>
<%@page import="study.itwill.jsp.WebHandler"%>
<%@page import="study.itwill.team5.member.MemberItem"%> 
<%@page import="study.itwill.team5.member.Member"%> 
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@ page trimDirectiveWhitespaces="true"%>
<%
   WebHandler web1 = new WebHandler(request, response, out);
   AdminItem loginInfo = (AdminItem)session.getAttribute("ADMIN_INFO");
   
   // 로그인 정보가 없을 경우 로그인 페이지로 이동
   if (loginInfo == null) {
      web1.goPage("/italia/login.jsp", "로그인이 필요합니다");
      return;
   }
%>
<%@ include file="../dbcon.jsp"%>
<%
	WebHandler web = new WebHandler(request, response, out);	
	
	// 페이지 번호 파라미터
	int nowPage = web.getInt("page");
	
	// 파라미터가 없다면 -1을 리턴하므로...
	if (nowPage < 1) {
		nowPage = 1;
	}
	
	// 전체 데이터 수 조회
	int total_count = DBHandler.getCount("member", "seq", null);
	
	// 페이징 객체 호출
	PageHandler p_handler = new PageHandler(nowPage, total_count, 10, 10);
	
	// 목록을 가져오는 메서드에게 데이터의 시작위치와 끝 위치 전달
	int start = p_handler.getStartRec();
	int end = p_handler.getPageArticleCount();

	ArrayList<MemberItem> list = (new Member()).listMember(0, start, end);

	if (list == null) {
		out.print("<script type='text/javascript'>alert('데이터 조회에 실패했습니다. 잠시후 다시 시도해 주세요.')");
		return;
	}
%>

<!DOCTYPE html>
<html lang="ko">
<head>
<%@ include file="../head.jsp"%>
</head>

<body>
	<%@ include file="../menu.jsp"%>
	<% DBHandler.disconnect(); %>
	<div class="container">
		<div class="page-header clearfix">
			<h1 class="pull-left">회원목록</h1>
			<div class="pull-right" style="padding-top: 30px">
				<a href="addMember.jsp" class="btn btn-info">추가하기</a>
			</div>
		</div>
		<div class="table-responsive">
			<table class="table table-striped table-hover ">
				<thead>
					<tr class="warning">
					    <th class="text-center">회원번호</th>
						<th class="text-center">메일</th>
						<th class="text-center">별명</th>
						<th class="text-center">이름</th>
						<th class="text-center">성별</th>
						<th class="text-center">생년월일</th>
						<th class="text-center">전화번호</th>
						<th class="text-center">회원가입일</th>
						<th class="text-center">정보수정일</th>
						<th class="text-center"></th>
					</tr>
				</thead>
				<tbody>
				
					<%
						if (list.size() < 1) {
					%>
					<tr>
						<td colspan="10"><p class="text-center text-warning"
								style="height: 100px">저장된 데이터가 없습니다.</p></td>
					</tr>
					<%
						} else {
							for (int i = 0; i < list.size(); i++) {
								MemberItem item = list.get(i);
					%>
					<tr class="text-center">
					    <td><%=item.getSeq()%></td>
						<td><%=item.getEmail1()%>@<%=item.getEmail2()%></td>
						<td><%=item.getNickname()%></td>
						<td><%=item.getUser_name()%></td> 
						<td><%
								if (item.getGender().equals("M")) {
									out.print("남자");
								} else if (item.getGender().equals("F")) {
									out.print("여자");
								}
						%></td> 
						<td><%=item.getBirthday().substring(0,10)%></td>
						<td class="col-md-2"><%=item.getHp1()%>-<%=item.getHp2()%>-<%=item.getHp3()%></td>
					    <td class="col-md-1 small"><%=item.getReg_date().substring(0, 4)%>-<%=item.getReg_date().substring(4, 6)%>-<%=item.getReg_date().substring(6, 8)%><br><%=item.getReg_date().substring(8, 10)%>:<%=item.getReg_date().substring(10, 12)%>:<%=item.getReg_date().substring(12, 14)%></td>
						<td class="col-md-1 small"><%=item.getEdit_date().substring(0, 4)%>-<%=item.getEdit_date().substring(4, 6)%>-<%=item.getEdit_date().substring(6, 8)%><br><%=item.getEdit_date().substring(8, 10)%>:<%=item.getEdit_date().substring(10, 12)%>:<%=item.getEdit_date().substring(12, 14)%></td>
						<td><a href="viewMember.jsp?seq=<%=item.getSeq()%>"
							class="btn btn-sm btn-primary">정보보기</a></td>
					</tr>
					<%
						}
									}
					%>
					
				</tbody>
			</table>
		</div>
		<!-- 페이지 구현 -->
		<div class="text-center">
			<ul class="pagination pagination-centered">
<%
	// 이전 페이지 그룹 링크
	// --> 현재 페이지가 1 페이지의 그룹 수 보다 작다면 첫 그룹이므로
	//		링크 비활성화
	if (p_handler.getNowPage() <= p_handler.getPageGroupCount()) {
%>
				<li class="disabled"><a href="#">&laquo;</a></li>
<%
	} else {
		// 그렇지 않다면, 이전 페이지 그룹의 마지막 페이지로 링크 생성
		int prevPage = p_handler.getStartPage()-1;
%>
				<li><a href="listMember.jsp?page=<%=prevPage%>">&laquo;</a></li>
<%		
	}
%>



<%
	// 현재 페이지 그룹의 첫 페이지부터 마지막 페이지까지 반복 처리
	for (int i=p_handler.getStartPage(); 
			i<=p_handler.getEndPage(); i++) {
		String classAttr = "";
		if (i == p_handler.getNowPage()) {
			classAttr = "class='active'";
		}
%>
				<li <%=classAttr%>><a href="listMember.jsp?page=<%=i%>"><%=i%></a></li>
<%
	}
%>
  				
  				
  				
<%
	// 현재 페이지가 첫 마지막 페이지 그룹의 첫 페이지보다 크거나 같다면,
	// 다음 페이지로 이동할 수 없다.
	if (p_handler.getNowPage() 
			>= p_handler.getLastGroupFirstPage()) {
%>  				
  				<li class="disabled"><a href="#">&raquo;</a></li>
<%
	} else {
		// 그렇지 않다면 현재 그룹의 마지막페이지+1--> 다음 그룹의 첫 페이지로
		// 이동할 링크 생성
		int nextPage = p_handler.getEndPage()+1;
%>
				<li><a href="listMember.jsp?page=<%=nextPage%>">&raquo;</a></li>
<%
	}
%>
			</ul>
		</div>
	
	</div>

	<!-- Javascript -->
	<script src="/italia/assets/js/jquery.js"></script>
	<script src="/italia/assets/js/bootstrap.min.js"></script>
</body>
</html>